/*
  串排序
 【题目描述】
    对给定的 n(1 ≤ n ≤ 20)个国家名（国家名字长度不超过20），按其字母的顺序输出。
 【输入】
    第一行为国家的个数n；
    以下n行为国家的名字。
 【输出】
    n行，排序后的国名。
 【输入样例】
    3
    Korea
    China
    Japan
 【输出样例】
    China
    Japan
    Korea
*/
#include <iostream>
#include <string>

using namespace std;

int main()
{
   string s2;
   int n;
   int i;
   int j;

   cin >> n;
   string a1[n]= {};

   for (i = 0; i < n; i++) {
      /*
        特别注意:
        由于前面使用了cin >> n, 这里我们不能使用 getline(cin, a1[i]),
        因为输入数字的那一行后面的回车会被getline(cin, a1[i])作为一行输入进行处理!
       */
      cin >> a1[i];
   }

   for (i = 0; i < n - 1; i++) {
      for (j = 0; j < n - i - 1; j++) {
         if (a1[j] < a1[j + 1]) {
            continue;
         } else if (a1[j] > a1[j + 1]) {
            s2 = a1[j + 1];
            a1[j + 1]= a1[j];
            a1[j] = s2;
         }
      }
   }

   for (j = 0; j < n; j++) {
      cout << a1[j] << endl;
   }

   return 0;
}